import {StackNavigationProp} from '@react-navigation/stack';
import {RouteProp} from "@react-navigation/core";


// 定义路由常量
export const ROUTES = {
    Detail: 'detail/DetailScreen',
    Tableview: 'tableview/tableviewlist',
    News: 'news/NewsScreen',
} as const;

// 定义导航参数类型
export type RouteParamList = {
    [ROUTES.Tableview]: undefined; // Tableview 不需要参数
    [ROUTES.News]: undefined; // Tableview 不需要参数
    [ROUTES.Detail]: { id: number }; // Detail 需要一个 id 参数
};

// 导航类型简化
export type AppNavigationProp<RouteName extends keyof RouteParamList> = StackNavigationProp<RouteParamList, RouteName>;

export type AppRouteProp<RouteName extends keyof RouteParamList> = RouteProp<RouteParamList, RouteName>;
